import request from '@/utils/request'

/**
 * 获取热门商品列表
 * @param {Object} params - 查询参数
 */
export const getHotProducts = (params = {}) => {
  return request.get('/api/products/hot', params)
}

/**
 * 商品相关API
 */
export default {
  /**
   * 获取热门商品列表
   * @param {Object} params - 查询参数
   */
  getHotProducts(params = {}) {
    return request.get('/api/products/hot', params)
  },

  /**
   * 获取商品列表
   * @param {Object} params - 查询参数
   */
  getProducts(params = {}) {
    return request.get('/api/products', params)
  },

  /**
   * 获取商品列表（别名，保持兼容性）
   * @param {Object} params - 查询参数
   */
  getProductList(params = {}) {
    return this.getProducts(params)
  },

  /**
   * 获取商品详情
   * @param {number} productId - 商品ID
   */
  getProductDetail(productId) {
    return request.get(`/api/products/${productId}`)
  },

  /**
   * 获取商品分类
   */
  getProductCategories() {
    return request.get('/api/products/categories')
  },

  /**
   * 搜索商品
   * @param {string} keyword - 搜索关键词
   * @param {Object} params - 其他参数
   */
  searchProducts(keyword, params = {}) {
    return request.get('/api/products/search', { keyword, ...params })
  },

  /**
   * 获取推荐商品
   * @param {number} productId - 当前商品ID
   * @param {number} limit - 限制数量
   */
  getRecommendProducts(productId, limit = 5) {
    return request.get(`/api/products/${productId}/recommend`, { limit })
  }
}